package com.example.demo.exception;

/**
 * 异常枚举
 */
public enum SXExceptionEnum implements ServiceExceptionEnum {

    DATA_EMPTY(10001, "数据为空"),

    FLOW_NAME_EMPTY(10011, "流程名称为空"),

    FLOW_NAME_EXISTS(10011, "流程名称已经存在"),

    JWTTOEN_UNSUPPORTEDENCODING(10002, "JWTToken认证解密出现UnsupportedEncodingException异常"),


    JWTTOEN_JWTDECODE(10003,"解密Token公共信息出现JWTDecodeException异常"),

    LEADING_FAIL(20001, "导入失败,表头不对应！"),

    LEADING_FORMAT(20002, "导入失败,文件格式不正确！"),

    /**
     * 其他
     */
    INVLIDE_DATE_STRING(10003, "输入日期格式不对"),

    /**
     * 文件上传
     */
    FILE_READING_ERROR(10004, "FILE_READING_ERROR!"),
    FILE_NOT_FOUND(10005, "FILE_NOT_FOUND!"),

    /**
     * 错误的请求
     */
    REQUEST_NULL(10006, "请求有错误"),
    SERVER_ERROR(10007, "服务器异常"),
    
    /**
     * token异常
     */
    TOKEN_EXPIRED(10008, "token过期"),
    TOKEN_ERROR(10009, "token验证失败"),

    DATA_NOT_EXIST(10011, "数据不存在"),

    DATA_EXIST(10012, "数据已存在"),

    ARGUMENT_ERROR(10010, "参数错误"),

    FIELD_DESC_DATA_EXIST(10013, "该字段中文名已存在，请重新添加"),

    PUBLISHED_ITEM(10014, "该事项已发布，不能修改或删除，请先做下线操作"),

    PUBLISHED_ITEM_NONEHANDLE(10015, "该事项已发布，不能做操作，请先做下线操作"),

    /**
     * 登录超时
     */
    TOKEN_OVER_TIME(10015, "登录超时"),

    PARAMS_EMPTY(10016, "参数为空"),

    BEFORE_ITEM_PUBLISHED(10017, "政务百科发布的事项，不允许删除"),

    NUMBER_ERROR(10018, "数字格式错误"),

    DICT_NOT_EXIST(10019, "数据字典不存在"),

    SELF_ERROR(10020, "自定义错误"),
    ;

    SXExceptionEnum(int code, String message) {
        this.code = code;
        this.message = message;
    }


    private Integer code;

    private String message;

    @Override
    public Integer getCode() {
        return code;
    }

    public void setCode(Integer code) {
        this.code = code;
    }

    @Override
    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }
}
